package com.aibaixun.system.service;

import com.aibaixun.common.core.domain.R;
import com.aibaixun.system.domain.DicmAlarm;
import com.aibaixun.system.domain.dto.DicmAlarmPageDto;
import com.aibaixun.system.domain.dto.IndexStatisticsDto;
import com.aibaixun.system.domain.vo.AlarmStatisticsVo;
import com.aibaixun.system.domain.vo.QueryAlarmVo;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
* @author zhangyh
* @description 针对表【dicm_alarm(告警信息表)】的数据库操作Service
* @createDate 2023-09-19 18:37:42
*/
public interface DicmAlarmService extends IService<DicmAlarm> {

    /**
     * 消息处理
     * @param parseObject
     */
    void handleAlarmMsg(JSONObject parseObject);

    /**
     * 分页
     * @param page
     * @param pageDto
     * @return
     */
    R<Page<DicmAlarm>> getPage(Page page, DicmAlarmPageDto pageDto);

    /**
     * 详情
     * @param alarmId
     * @return
     */
    R<DicmAlarm> getDetail(String alarmId);

    /**
     * 获取dicm告警统计
     * @param dto
     * @return
     */
    AlarmStatisticsVo getAlarmStatistics(IndexStatisticsDto dto);

    List<QueryAlarmVo> queryAlarmList(String  startTime, String endTime);
}
